/**
* Universidade de Brasilia
* 2013.1
* Trabalho de Programacao Orientada a Objetos
* Professor: Fernando Chacon
* Alunos
*   Lucas Lo Ami Alvino Silva - 09/0009886
*   Leonardo de Sousa Melo    - 08/34220
*
* @author Leonardo de Sousa Melo
*/

#include "Teste.h"

namespace{
    Teste t;

    //!Testes para o domínio Nome
    TEST_FIXTURE(TesteNome, NomeValido)
    {
        t.input = getTesteNomeValido();
        Nome(t.input);
    }

    TEST_FIXTURE(TesteNome, NomeInvalido)
    {
        t.input = getTesteNomeInvalido();
        Nome(t.input);
    }

    //!Testes para o domínio Matricula
    TEST_FIXTURE(TesteMatricula, MatriculaValida)
    {
        t.input = getTesteMatriculaValida();
        Matricula(t.input);
    }

    TEST_FIXTURE(TesteMatricula, MatriculaInvalida)
    {
        t.input = getTesteMatriculaInvalida();
        Matricula(t.input);
    }

    //!Testes para o domínio Senha
    TEST_FIXTURE(TesteSenha, SenhaValida)
    {
        t.input = getTesteSenhaValida();
        Senha(t.input);
    }

    TEST_FIXTURE(TesteSenha, SenhaInvalida)
    {
        t.input = getTesteSenhaInvalida();
        Senha(t.input);
    }

    //!Testes para o domínio NumeroConta
    TEST_FIXTURE(TesteNumeroConta, NumeroContaValida)
    {
        t.input = getTesteNumeroContaValida();
        NumeroConta(t.input);
    }

    TEST_FIXTURE(TesteNumeroConta, NumeroContaInvalida)
    {
        t.input = getTesteNumeroContaInvalida();
        NumeroConta(t.input);
    }

    //!Testes para o domínio NumeroPagamento
    TEST_FIXTURE(TesteNumeroPagamento, NumeroPagamentoValido)
    {
        t.input = getTesteNumeroPagamentoValido();
        NumeroPagamento(t.input);
    }

    TEST_FIXTURE(TesteNumeroPagamento, NumeroPagamentoInvalido)
    {
        t.input = getTesteNumeroPagamentoInvalido();
        NumeroPagamento(t.input);
    }

    //!Testes para o domínio TipoConta
    TEST_FIXTURE(TesteTipoConta, TipoContaValido)
    {
        t.input = getTesteTipoContaValido();
        TipoConta(t.input);
    }

    TEST_FIXTURE(TesteTipoConta, TipoContaInvalido)
    {
        t.input = getTesteTipoContaInvalido();
        TipoConta(t.input);
    }

    //!Testes para o domínio Data
    TEST_FIXTURE(TesteData, DataValida)
    {
        t.input = getTesteDataValida();
        Data(t.input);
    }

    TEST_FIXTURE(TesteData, DataInvalida)
    {
        t.input = getTesteDataInvalida();
        Data(t.input);
    }

    //!Testes para o domínio Dinheiro
    TEST_FIXTURE(TesteDinheiro, DinheiroValido)
    {
        t.input = getTesteDinheiroValido();
        Dinheiro(t.input);
    }

    TEST_FIXTURE(TesteDinheiro, DinheiroInvalido)
    {
        t.input = getTesteDinheiroInvalido();
        Dinheiro(t.input);
    }

    //!Testes para o domínio CodigoPagamento
    TEST_FIXTURE(TesteCodigoPagamento, CodigoPagamentoValido)
    {
        t.input = getTesteCodigoPagamentoValido();
        CodigoPagamento(t.input);
    }

    TEST_FIXTURE(TesteCodigoPagamento, CodigoPagamentoInvalido)
    {
        t.input = getTesteCodigoPagamentoInvalido();
        CodigoPagamento(t.input);
    }

}

